package yzy.ecps.dao;

import java.util.List;

import yzy.ecps.model.BtcGoods;
import yzy.ecps.query.condition.GoodsQueryCondition;
import yzy.ecps.query.condition.PortalGoodsCondition;

public interface GoodsDao {
	/**
	 * 根据筛选条件查询商品分页数据
	 * @param gqc
	 * @return
	 */
	public List<BtcGoods> findByCondition(GoodsQueryCondition gqc);
	
	/**
	 * 根据筛选条件查询商品数据的数量
	 * @param gqc
	 * @return
	 */
	public int getCountByCondition(GoodsQueryCondition gqc);
	
	/**
	 * 保存商品
	 * @param goods
	 */
	public void saveGoods(BtcGoods goods);
	
	/**
	 * 修改商品信息
	 * @param goods
	 */
	public void updateGoods(BtcGoods goods);
	
	/**
	 * 根据前台商品的品牌，价格范围，和参数值查询商品的分页数据
	 * @param pgc
	 * @return
	 */
	public List<BtcGoods> findByPortalCondition(PortalGoodsCondition pgc);
	
	/**
	 * 根据前台商品的品牌，价格范围，和参数值查询商品的数据数量
	 * @param pgc
	 * @return
	 */
	public int getCountByPortalCondition(PortalGoodsCondition pgc);
	
	/**
	 * 根据ID查询商品的全信息，包含属性，销售单元，大字段数据
	 * @param goodsId
	 * @return
	 */
	public BtcGoods getGoodsById(Long goodsId);
}
